package com.atguigu.guli.service.cms.controller.api;


import com.atguigu.guli.service.base.result.R;
import com.atguigu.guli.service.cms.service.AdService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.Cacheable;
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;
import java.util.Map;

/**
 * <p>
 * 广告推荐 前端控制器
 * </p>
 *
 * @author yz
 * @since 2022-08-01
 */
@RestController
@RequestMapping("/api/cms/ad")

public class ApiAdController {
    @Autowired
    AdService adService;

    /*
        springcache在简单需求的缓存管理中使用
        @Cachable： 在查询方法上使用 存储缓存
        @CachePut: 在新增方法上使用，可以将新增数据添加到缓存中(最好需要自己实现业务)
        @CacheEvict： 在更新删除新增上使用，可以让缓存失效
         */

    //1.查询首页热门数据
    @GetMapping
    @Cacheable(value = "ads",key = "'cache'")
    public R getAds(){
        Map<String, List> map=adService.getHotAds();
        return R.ok().data("map",map);
    }
}

